//-------------------------------------------------------------------
//	Copyright (c) 2010-2014  Zhirnov Andrey
//	This file is part of the "UX Standard Lib" project.
//	See copyright notice in "UX_STL_Core.h".
//-------------------------------------------------------------------

#pragma once

#include "../ux_stl_core.h"


namespace UX_STL
{
namespace UXTypes
{

	STATIC_ASSERTE( sizeof(char) == 1 );
	STATIC_ASSERTE( sizeof(bool) == sizeof(char) );
	STATIC_ASSERTE( sizeof(int8) == sizeof(char) );
	STATIC_ASSERTE( sizeof(uint8) == sizeof(char) );
	
	STATIC_ASSERTE( sizeof(int16) == sizeof(int8)*2 );
	STATIC_ASSERTE( sizeof(uint16) == sizeof(uint8)*2 );
	
	STATIC_ASSERTE( sizeof(int32) == sizeof(int16)*2 );
	STATIC_ASSERTE( sizeof(uint32) == sizeof(uint16)*2 );
	
	STATIC_ASSERTE( sizeof(int64) == sizeof(int32)*2 );
	STATIC_ASSERTE( sizeof(uint64) == sizeof(uint32)*2 );

	STATIC_ASSERTE( sizeof(usize) == sizeof(void *) );
	STATIC_ASSERTE( sizeof(isize) == sizeof(void *) );

	STATIC_ASSERTE( sizeof(float)*2 == sizeof(double) );
	STATIC_ASSERTE( sizeof(long double) >= sizeof(double) );

}	// UXTypes
}	// UX_STL
